package com.ruoyi.system.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 失眠预警对象 bus_insomnia_alert
 *
 * @author wuxiao
 * @date 2025-09-29
 */
public class BusInsomniaAlert extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    @Excel(name = "主键ID")
    private Long id;

    /** 用户ID */
    @Excel(name = "用户ID")
    private Long userId;

    /** 对应 sleep_record.id */
    @Excel(name = "对应 sleep_record.id")
    private Integer recordId;

    /** 预警类型（晚起/补偿行为/睡眠不足/缺乏运动/强迫入睡） */
    @Excel(name = "预警类型", readConverterExp = "晚=起/补偿行为/睡眠不足/缺乏运动/强迫入睡")
    private String alertType;

    /** 预警提示信息 */
    @Excel(name = "预警提示信息")
    private String alertMessage;

    /** 预警等级 (1=轻度,2=中度,3=严重) */
    @Excel(name = "预警等级 (1=轻度,2=中度,3=严重)")
    private String alertLevel;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public void setRecordId(Integer recordId)
    {
        this.recordId = recordId;
    }

    public Integer getRecordId()
    {
        return recordId;
    }

    public void setAlertType(String alertType)
    {
        this.alertType = alertType;
    }

    public String getAlertType()
    {
        return alertType;
    }

    public void setAlertMessage(String alertMessage)
    {
        this.alertMessage = alertMessage;
    }

    public String getAlertMessage()
    {
        return alertMessage;
    }

    public void setAlertLevel(String alertLevel)
    {
        this.alertLevel = alertLevel;
    }

    public String getAlertLevel()
    {
        return alertLevel;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("recordId", getRecordId())
            .append("alertType", getAlertType())
            .append("alertMessage", getAlertMessage())
            .append("alertLevel", getAlertLevel())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
